##########################################

# extract counts and proportions for plotting

# composite reference_df
agg_reference_df <- dplyr::left_join(
  total_counts %>% 
    dplyr::filter(Year >= 2011) %>%
    dplyr::group_by(Year) %>%
    dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                     health_references = sum(health_count, na.rm = T),
                     intersection_references = sum(intersection_count, na.rm = T)
    ) %>%
    tidyr::pivot_longer(cols = -c("Year"),
                        names_to = "Type", values_to = "Count"),
  total_counts %>% 
    dplyr::filter(Year >= 2011) %>%
    dplyr::group_by(Year) %>%
    dplyr::summarize(climate_references = mean(climate_count, na.rm = T),
                     health_references = mean(health_count, na.rm = T),
                     intersection_references = mean(intersection_count, na.rm = T)
    ) %>%
    tidyr::pivot_longer(cols = -c("Year"),
                        names_to = "Type", values_to = "Avg")) %>%
  dplyr::mutate(Key = factor(dplyr::case_when(Type == "climate_references" ~ "Climate",
                                              Type == "intersection_references" ~ "Intersection",
                                              Type == "health_references" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L))

# health sector reference_df

reference_df <- dplyr::left_join(
  total_counts %>% 
    dplyr::filter(Year >= 2011) %>%
    dplyr::group_by(Sector, Year) %>%
    dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                     health_references = sum(health_count, na.rm = T),
                     intersection_references = sum(intersection_count, na.rm = T)
    ) %>%
    tidyr::pivot_longer(cols = -c("Sector", "Year"),
                        names_to = "Type", values_to = "Count"),
  total_counts %>% 
    dplyr::filter(Year >= 2011) %>%
    dplyr::group_by(Sector, Year) %>%
    dplyr::summarize(climate_references = mean(climate_count, na.rm = T),
                     health_references = mean(health_count, na.rm = T),
                     intersection_references = mean(intersection_count, na.rm = T)
    ) %>%
    tidyr::pivot_longer(cols = -c("Sector", "Year"),
                        names_to = "Type", values_to = "Avg")) %>%
  dplyr::mutate(Key = factor(dplyr::case_when(Type == "climate_references" ~ "Climate",
                                              Type == "intersection_references" ~ "Intersection",
                                              Type == "health_references" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L))

# composite plot_df
agg_plot_df <- total_texts %>% dplyr::filter(Year >= 2011)  %>%
  tidyr::pivot_longer(cols = -c("Sector", "Year", "total_texts"),
                      names_to = "text", values_to = "value") %>%
  dplyr::group_by(Year, text) %>%
  dplyr::summarise(total_texts = sum(total_texts, na.rm = T),
                   value = sum(value, na.rm = T)) %>%
  dplyr::mutate(value = tidyr::replace_na(value, 0),
                Prop = value/total_texts,
                Key = factor(dplyr::case_when(text == "climate_texts" ~ "Climate",
                                              text == "intersection_texts" ~ "Intersection",
                                              text == "health_texts" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L))

# health sector plot_df
plot_df <- total_texts %>% dplyr::filter(Year >= 2011)  %>%
  tidyr::pivot_longer(cols = -c("Sector", "Year", "total_texts"),
                      names_to = "text", values_to = "value") %>%
  dplyr::mutate(value = tidyr::replace_na(value, 0),
                Prop = value/total_texts,
                Key = factor(dplyr::case_when(text == "climate_texts" ~ "Climate",
                                              text == "intersection_texts" ~ "Intersection",
                                              text == "health_texts" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L))

Data summary

data_summary <- tibble::tibble(
  count = length(total_counts$Participant),
  unique = unique(total_counts$Participant) %>% length(),
  total_health = total_counts %>% dplyr::filter(!is.na(health_count)) %>% dplyr::filter(health_count != 0) %>% nrow(),
  total_climate = total_counts %>% dplyr::filter(!is.na(climate_count)) %>% dplyr::filter(climate_count != 0) %>% nrow(),
  total_intersection = total_counts %>% dplyr::filter(!is.na(intersection_count)) %>% dplyr::filter(intersection_count != 0) %>% nrow()
) %>%
  dplyr::mutate(prop_health = round(total_health/count,2),
                prop_climate = round(total_climate/count,2),
                prop_intersection = round(total_intersection/count,2)) 

colnames(data_summary) <- c("Companies (N)", "Companies (Unique)", 
                             "Health, (N)" , "Climate, (N)", "Intersection, (N)", 
                             "Health, %" , "Climate, %", "Intersection, %")
data_summary %>%
  knitr::kable()
Companies (N) Companies (Unique) Health, (N) Climate, (N) Intersection, (N) Health, % Climate, % Intersection, %
17984 5329 14528 12297 4627 0.81 0.68 0.26
readr::write_csv(data_summary, "../output/0_0_data_summary.csv")

Yearly breakdown

a <- total_counts %>% dplyr::filter(Year >= 2011) %>% dplyr::group_by(Year) %>% 
  dplyr::summarize("Companies (N)" = n_distinct(Participant)) 

b <- agg_plot_df %>%
  dplyr::select(Year, Key, value) %>%
  dplyr::mutate(Year = lubridate::year(Year)) %>%
  tidyr::pivot_wider(id_cols = Year, names_from = "Key", values_from = "value") %>%
  dplyr::rename("Climate (N)" = "Climate", "Health (N)" = "Health", "Intersection (N)" = "Intersection")
  
c <- agg_plot_df %>%
  dplyr::select(Year, Key, Prop) %>%
  dplyr::mutate(Prop = round(Prop, 2),
                Year = lubridate::year(Year)) %>%
  tidyr::pivot_wider(id_cols = Year, names_from = "Key", values_from = "Prop") %>%
  dplyr::rename("Climate (Prop)" = "Climate", "Health (Prop)" = "Health", "Intersection (Prop)" = "Intersection")
  
yearly_breakdown <- dplyr::left_join(a, b) %>% left_join(., c) 

yearly_breakdown %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year Companies (N) Climate (N) Health (N) Intersection (N) Climate (Prop) Health (Prop) Intersection (Prop)
2011 1021 773 868 282 0.73 0.82 0.27
2012 1374 998 1150 327 0.70 0.81 0.23
2013 1553 1069 1287 343 0.67 0.80 0.21
2014 1686 1131 1369 357 0.66 0.79 0.21
2015 1771 1194 1463 408 0.66 0.81 0.22
2016 1928 1266 1546 440 0.64 0.78 0.22
2017 1972 1352 1594 484 0.67 0.79 0.24
2018 2000 1392 1638 553 0.68 0.80 0.27
2019 2197 1568 1864 637 0.70 0.83 0.28
2020 2029 1547 1742 791 0.75 0.84 0.38
readr::write_csv(yearly_breakdown, "../output/0_1_yearly_breakdown.csv")

Table of English language COP reports by year

reports_by_year <- total_counts %>% dplyr::filter(Year >= 2011) %>% dplyr::group_by(Year) %>% 
  dplyr::summarize(count = n_distinct(Participant)) %>%
  dplyr::rename("Companies (N)" = "count")

reports_by_year %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year Companies (N)
2011 1021
2012 1374
2013 1553
2014 1686
2015 1771
2016 1928
2017 1972
2018 2000
2019 2197
2020 2029
readr::write_csv(reports_by_year, "../output/0_2_reports_by_year.csv")

All Sectors (Composite)

These are the figures generated with the composite measures from all sectors

a. Main text - Proportion of companies, %

Plot

## a. Main text - Proportion of companies, %
p <- agg_plot_df %>% 
  ggplot(aes(x = Year, y = Prop, color = Key)) +
  geom_path(aes(linetype = Key)) +
  scale_linetype_manual(values = c("solid", "longdash", "twodash")) +
  ggplot2::annotate("text", x = as.Date("2013-05-31"), y = 0.85, label = "Health", color = "#619cff") +
  ggplot2::annotate("text", x = as.Date("2013-05-31"), y = 0.48, label = "Climate Change", color = "darkgreen") +
  ggplot2::annotate("text", x = as.Date("2012-12-31"), y = 0.1, label = "Intersection", color = "red") +
  scale_y_continuous(labels = scales::percent_format(), limits = c(0,1)) +
  theme_minimal() +
  theme(legend.position = "none") +
  labs(y = "Proportion of companies, %") 

p

ggsave("../output/1a_prop_of_companies.pdf", p,  width = 10, height = 7)

Table

t <- agg_plot_df %>%
  dplyr::select(Year, Key, Prop) %>%
  dplyr::mutate(Prop = round(Prop, 2),
                Year = lubridate::year(Year)) %>%
  tidyr::pivot_wider(id_cols = Year, names_from = "Key", values_from = "Prop") 

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year Climate Health Intersection
2011 0.73 0.82 0.27
2012 0.70 0.81 0.23
2013 0.67 0.80 0.21
2014 0.66 0.79 0.21
2015 0.66 0.81 0.22
2016 0.64 0.78 0.22
2017 0.67 0.79 0.24
2018 0.68 0.80 0.27
2019 0.70 0.83 0.28
2020 0.75 0.84 0.38
readr::write_csv(t, "../output/1a_prop_of_companies.csv")

b. Appendix - Total number of references

Plot

## b. Appendix - Total number of references
p <- agg_reference_df %>%
  ggplot(aes(x = Year, y = Count, color = Key)) +
  geom_line(aes(linetype = Key))  +
  scale_linetype_manual(values = c("solid", "longdash", "twodash")) +
  ggplot2::annotate("text", x = as.Date("2011-05-31"), y = 31500, label = "Health", color = "#619cff") +
  ggplot2::annotate("text", x = as.Date("2013-05-31"), y = 25000, label = "Climate Change", color = "darkgreen") +
  ggplot2::annotate("text", x = as.Date("2016-12-31"), y = 4000, label = "Intersection", color = "red") +
  theme_minimal() +
  theme(legend.position = "none") +
  labs(y = "Total number of references") 

p

ggsave("../output/1b_number_of_references.pdf", p,  width = 10, height = 7)

Table

t <- agg_plot_df %>%
  dplyr::select(Year, Key, value) %>%
  dplyr::mutate(Year = lubridate::year(Year)) %>%
  tidyr::pivot_wider(id_cols = Year, names_from = "Key", values_from = "value") 

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year Climate Health Intersection
2011 773 868 282
2012 998 1150 327
2013 1069 1287 343
2014 1131 1369 357
2015 1194 1463 408
2016 1266 1546 440
2017 1352 1594 484
2018 1392 1638 553
2019 1568 1864 637
2020 1547 1742 791
readr::write_csv(t, "../output/1b_number_of_references.csv")

c. Appendix - Total number of references (Intersection)

Plot

## c. Appendix - Total number of references (Intersection)
p <- agg_reference_df %>% 
  dplyr::filter(Key == "Intersection") %>%
  ggplot(aes(x = Year, y = Count, color = Key)) +
  geom_line() +
  ggplot2::annotate("text", x = as.Date("2013-12-31"), y = 1500, label = "Intersection", color = "red") +
  theme_minimal() +
  scale_y_continuous(limits = c(0, 4000)) +
  theme(legend.position = "none") +
  labs(y = "Total number of references") 

p

ggsave("../output/1c_number_of_references_intersection.pdf", p,  width = 10, height = 7)

Table

t <- agg_reference_df %>%
  dplyr::select(Year, Key, Count) %>%
  dplyr::mutate(Year = lubridate::year(Year)) %>%
  tidyr::pivot_wider(id_cols = Year, names_from = "Key", values_from = "Count") %>%
  dplyr::select(Year, Intersection) 

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year Intersection
2011 1023
2012 989
2013 1320
2014 1321
2015 1305
2016 1571
2017 1739
2018 1828
2019 2421
2020 3365
readr::write_csv(t, "../output/1c_number_of_references_intersection.csv")

d. Appendix - Proportion of companies, % (Intersection)

Plot

p <- agg_plot_df %>% 
  dplyr::filter(Key == "Intersection") %>%
  ggplot(aes(x = Year, y = Prop, color = Key)) +
  geom_path(aes(linetype = Key)) +
  scale_linetype_manual(values = c("solid", "longdash", "twodash")) +
  ggplot2::annotate("text", x = as.Date("2015-12-31"), y = 0.3, label = "Intersection", color = "red") +
  scale_y_continuous(labels = scales::percent_format(), limits = c(0, 0.4)) +
  theme_minimal() +
  theme(legend.position = "none") +
  labs(y = "Proportion of companies, %") 

p

ggsave("../output/1d_proportion_intersection.pdf", p,  width = 10, height = 7)

Table

agg_plot_df %>%
  dplyr::select(Year, Key, Prop) %>%
  dplyr::mutate(Year = lubridate::year(Year),
                Prop = round(Prop, 2)) %>%
  tidyr::pivot_wider(id_cols = Year, names_from = "Key", values_from = "Prop") %>%
  dplyr::select(Year, Intersection) 
t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year Intersection
2011 1023
2012 989
2013 1320
2014 1321
2015 1305
2016 1571
2017 1739
2018 1828
2019 2421
2020 3365
readr::write_csv(t, "../output/1d_proportion_intersection.csv")

e. Appendix - Average number of references

Plot

p <- agg_reference_df %>%
  ggplot(aes(x = Year, y = Avg, color = Key)) +
  geom_line(aes(linetype = Key)) +
  scale_linetype_manual(values = c("solid", "longdash", "twodash")) +
  ggplot2::annotate("text", x = as.Date("2011-05-31"), y = 29, label = "Health", color = "#619cff") +
  ggplot2::annotate("text", x = as.Date("2014-01-01"), y = 17, label = "Climate Change", color = "darkgreen") +
  ggplot2::annotate("text", x = as.Date("2016-12-31"), y = 3, label = "Intersection", color = "red") +
  theme_minimal() +
  theme(legend.position = "none") +
  labs(y = "Average number of references") 

p

ggsave("../output/1e_avg_references.pdf", p,  width = 10, height = 7)

Table

t <- agg_reference_df %>%
  dplyr::select(Year, Key, Avg) %>%
  dplyr::mutate(Year = lubridate::year(Year),
                Avg = round(Avg,2)) %>%
  tidyr::pivot_wider(id_cols = Year, names_from = "Key", values_from = "Avg")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year Climate Health Intersection
2011 20.26 26.96 1.10
2012 17.06 24.99 0.80
2013 15.05 24.05 0.96
2014 15.46 25.95 0.90
2015 13.87 24.89 0.84
2016 14.41 24.19 0.95
2017 14.53 24.55 1.02
2018 15.21 25.98 1.05
2019 17.48 26.14 1.24
2020 22.94 32.98 1.84
readr::write_csv(t, "../output/1e_avg_references.csv")

f. Appendix - Total number of references by WHO region

Plot

## f. Appendix - Total number of references by WHO region
p <- total_counts %>% 
  dplyr::filter(Year >= 2011) %>%
  dplyr::group_by(Year, who_region) %>%
  dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                   health_references = sum(health_count, na.rm = T),
                   intersection_references = sum(intersection_count, na.rm = T)
  ) %>%
  tidyr::pivot_longer(cols = -c("Year", "who_region"),
                      names_to = "Type", values_to = "Count") %>%
  dplyr::mutate(Key = factor(dplyr::case_when(Type == "climate_references" ~ "Climate",
                                              Type == "intersection_references" ~ "Intersection",
                                              Type == "health_references" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L)) %>%
  dplyr::filter(Key == "Intersection") %>%
  ggplot(aes(x = Year, y = Count, color = who_region)) +
  geom_path() +
  theme_minimal() +
  labs(y = "Total number of references",
       color = "WHO Region") 

p

ggsave("../output/1f_who_number_references.pdf", p,  width = 10, height = 7)

Table

t <- total_counts %>% 
  dplyr::filter(Year >= 2011) %>%
  dplyr::group_by(Year, who_region) %>%
  dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                   health_references = sum(health_count, na.rm = T),
                   intersection_references = sum(intersection_count, na.rm = T)
  ) %>%
  dplyr::arrange(who_region, Year) 

colnames(t) <- c("Year", "WHO Region", "Climate", "Health", "Intersection")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year WHO Region Climate Health Intersection
2011 Africa 444 788 56
2012 Africa 242 960 20
2013 Africa 429 1460 38
2014 Africa 552 1536 73
2015 Africa 663 1880 50
2016 Africa 686 1988 41
2017 Africa 486 1383 51
2018 Africa 397 1210 31
2019 Africa 551 1527 52
2020 Africa 459 907 42
2011 Eastern Mediterranean 124 475 14
2012 Eastern Mediterranean 236 945 18
2013 Eastern Mediterranean 201 1133 29
2014 Eastern Mediterranean 196 721 13
2015 Eastern Mediterranean 290 1083 10
2016 Eastern Mediterranean 398 1073 29
2017 Eastern Mediterranean 349 1048 28
2018 Eastern Mediterranean 793 1662 46
2019 Eastern Mediterranean 748 1675 47
2020 Eastern Mediterranean 478 1450 51
2011 Europe 9455 12354 525
2012 Europe 10235 15910 547
2013 Europe 10684 15754 657
2014 Europe 12147 18610 680
2015 Europe 11079 16718 626
2016 Europe 12369 18716 803
2017 Europe 12299 19129 836
2018 Europe 12988 20714 891
2019 Europe 16866 24566 1217
2020 Europe 21566 28534 1597
2011 Latin America and the Caribbean 563 1214 41
2012 Latin America and the Caribbean 1339 2128 52
2013 Latin America and the Caribbean 876 1703 60
2014 Latin America and the Caribbean 804 1719 65
2015 Latin America and the Caribbean 703 1661 15
2016 Latin America and the Caribbean 958 1656 38
2017 Latin America and the Caribbean 1306 1961 64
2018 Latin America and the Caribbean 1179 2514 102
2019 Latin America and the Caribbean 1092 2837 76
2020 Latin America and the Caribbean 1756 3554 152
2011 North America 1755 3479 125
2012 North America 1853 3416 123
2013 North America 1589 4206 152
2014 North America 1840 5760 134
2015 North America 2188 7050 253
2016 North America 2341 6677 265
2017 North America 2553 6623 281
2018 North America 2538 6043 247
2019 North America 3562 5848 311
2020 North America 3978 6842 398
2011 South-East Asia 824 1527 57
2012 South-East Asia 868 1769 56
2013 South-East Asia 1201 2353 76
2014 South-East Asia 937 2272 55
2015 South-East Asia 1158 3050 105
2016 South-East Asia 1415 2648 116
2017 South-East Asia 944 2820 111
2018 South-East Asia 1073 2642 110
2019 South-East Asia 1230 2911 128
2020 South-East Asia 1123 2448 166
2011 Western Pacific 5755 5341 205
2012 Western Pacific 6308 5757 173
2013 Western Pacific 5641 6341 308
2014 Western Pacific 6097 7262 301
2015 Western Pacific 5489 7263 246
2016 Western Pacific 5579 7100 279
2017 Western Pacific 6748 8739 368
2018 Western Pacific 7476 10397 401
2019 Western Pacific 10069 11653 590
2020 Western Pacific 12474 16419 959
readr::write_csv(t, "../output/1f_who_number_references.csv")

g. Appendix - Proportion of references by WHO region

Plot

## j. Appendix - Total number of regerences by by SIDS, Tier 1 and Tier 2 categories

p <- total_counts %>% 
  dplyr::filter(Year >= 2011) %>%
  dplyr::mutate(climate_n = ifelse(climate_count >= 1, 1, 0),
                health_n = ifelse(health_count >= 1, 1, 0),
                intersection_n = ifelse(intersection_count >= 1, 1, 0)
                ) %>%
  dplyr::group_by(Year, who_region) %>%
  dplyr::summarize(total_counts = n(),
                   climate_prop = round(sum(climate_n, na.rm = T)/total_counts,2), 
                   health_prop = round(sum(health_n, na.rm = T)/total_counts,2),
                   intersection_prop = round(sum(intersection_n, na.rm = T)/total_counts,2)
  ) %>%
  tidyr::pivot_longer(cols = -c("Year", "who_region"),
                      names_to = "Type", values_to = "Prop") %>%
  dplyr::mutate(Key = factor(dplyr::case_when(Type == "climate_prop" ~ "Climate",
                                              Type == "intersection_prop" ~ "Intersection",
                                              Type == "health_prop" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L)) %>%
  dplyr::filter(Key == "Intersection" & !is.na(who_region)) %>%
  ggplot(aes(x = Year, y = Prop, color = who_region)) +
  geom_line() +
  theme_minimal() +
  labs(y = "Proportion of companies, %",
       color = "") +
  scale_y_continuous(labels = scales::percent_format(), limits = c(0, 0.5))

p

ggsave("../output/1g_who_prop_references.pdf", p,  width = 10, height = 7)

Table

t <- total_counts %>% 
  dplyr::filter(Year >= 2011) %>%
  dplyr::mutate(climate_n = ifelse(climate_count >= 1, 1, 0),
                health_n = ifelse(health_count >= 1, 1, 0),
                intersection_n = ifelse(intersection_count >= 1, 1, 0)
                ) %>%
  dplyr::group_by(Year, who_region) %>%
  dplyr::summarize(total_counts = n(),
                   climate_prop = round(sum(climate_n, na.rm = T)/total_counts,2), 
                   health_prop = round(sum(health_n, na.rm = T)/total_counts,2),
                   intersection_prop = round(sum(intersection_n, na.rm = T)/total_counts,2)
  ) %>%
  dplyr::arrange(desc(who_region), Year) %>%
  dplyr::filter(!is.na(who_region)) 

colnames(t) <- c("Year", "WHO Region", "Total documents", "Climate", "Health", "Intersection")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year WHO Region Total documents Climate Health Intersection
2011 Western Pacific 165 0.84 0.87 0.38
2012 Western Pacific 215 0.78 0.84 0.30
2013 Western Pacific 222 0.77 0.86 0.34
2014 Western Pacific 225 0.76 0.85 0.35
2015 Western Pacific 225 0.74 0.86 0.36
2016 Western Pacific 248 0.73 0.82 0.30
2017 Western Pacific 257 0.79 0.86 0.37
2018 Western Pacific 265 0.79 0.85 0.41
2019 Western Pacific 300 0.77 0.86 0.41
2020 Western Pacific 279 0.84 0.91 0.57
2011 South-East Asia 91 0.62 0.76 0.24
2012 South-East Asia 107 0.59 0.79 0.20
2013 South-East Asia 129 0.63 0.82 0.22
2014 South-East Asia 134 0.55 0.83 0.16
2015 South-East Asia 156 0.58 0.78 0.21
2016 South-East Asia 151 0.56 0.79 0.23
2017 South-East Asia 145 0.57 0.86 0.23
2018 South-East Asia 146 0.55 0.84 0.20
2019 South-East Asia 156 0.59 0.86 0.28
2020 South-East Asia 132 0.58 0.86 0.26
2011 North America 101 0.76 0.83 0.30
2012 North America 133 0.70 0.83 0.26
2013 North America 139 0.65 0.78 0.26
2014 North America 141 0.64 0.82 0.19
2015 North America 153 0.67 0.82 0.26
2016 North America 156 0.67 0.84 0.27
2017 North America 160 0.79 0.86 0.37
2018 North America 167 0.73 0.83 0.33
2019 North America 188 0.76 0.84 0.33
2020 North America 181 0.87 0.90 0.46
2011 Latin America and the Caribbean 61 0.56 0.66 0.23
2012 Latin America and the Caribbean 104 0.55 0.62 0.23
2013 Latin America and the Caribbean 95 0.55 0.62 0.22
2014 Latin America and the Caribbean 106 0.48 0.60 0.16
2015 Latin America and the Caribbean 82 0.54 0.66 0.13
2016 Latin America and the Caribbean 137 0.42 0.46 0.14
2017 Latin America and the Caribbean 133 0.50 0.50 0.19
2018 Latin America and the Caribbean 143 0.49 0.50 0.21
2019 Latin America and the Caribbean 127 0.48 0.50 0.23
2020 Latin America and the Caribbean 133 0.56 0.60 0.32
2011 Europe 557 0.75 0.82 0.25
2012 Europe 743 0.74 0.82 0.22
2013 Europe 863 0.71 0.81 0.19
2014 Europe 950 0.70 0.80 0.21
2015 Europe 997 0.69 0.80 0.22
2016 Europe 1068 0.68 0.79 0.22
2017 Europe 1100 0.69 0.79 0.22
2018 Europe 1095 0.72 0.82 0.26
2019 Europe 1236 0.73 0.84 0.27
2020 Europe 1181 0.77 0.85 0.37
2011 Eastern Mediterranean 42 0.48 0.81 0.19
2012 Eastern Mediterranean 63 0.54 0.76 0.22
2013 Eastern Mediterranean 80 0.40 0.78 0.11
2014 Eastern Mediterranean 77 0.44 0.70 0.06
2015 Eastern Mediterranean 114 0.51 0.80 0.08
2016 Eastern Mediterranean 118 0.50 0.80 0.12
2017 Eastern Mediterranean 121 0.50 0.83 0.09
2018 Eastern Mediterranean 136 0.51 0.82 0.18
2019 Eastern Mediterranean 131 0.56 0.84 0.19
2020 Eastern Mediterranean 99 0.58 0.82 0.24
2011 Africa 42 0.71 0.93 0.21
2012 Africa 61 0.52 0.87 0.13
2013 Africa 75 0.45 0.85 0.13
2014 Africa 93 0.47 0.81 0.13
2015 Africa 90 0.48 0.91 0.16
2016 Africa 100 0.56 0.89 0.17
2017 Africa 94 0.50 0.83 0.18
2018 Africa 89 0.53 0.87 0.18
2019 Africa 113 0.55 0.88 0.17
2020 Africa 61 0.61 0.85 0.25
readr::write_csv(t, "../output/1g_who_prop_references.csv")

h. Appendix - Total number of regerences by SIDS, Tier 1 and Tier 2

Plot

## i. Appendix - Total number of regerences by SIDS, Tier 1 and Tier 2
p <- total_counts %>% 
  dplyr::filter(Year >= 2011) %>%
  dplyr::group_by(Year, tier_region) %>%
  dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                   health_references = sum(health_count, na.rm = T),
                   intersection_references = sum(intersection_count, na.rm = T)
  ) %>%
  tidyr::pivot_longer(cols = -c("Year", "tier_region"),
                      names_to = "Type", values_to = "Count") %>%
  dplyr::mutate(Key = factor(dplyr::case_when(Type == "climate_references" ~ "Climate",
                                              Type == "intersection_references" ~ "Intersection",
                                              Type == "health_references" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L)) %>%
  dplyr::filter(Key == "Intersection" & !is.na(tier_region)) %>%
  ggplot(aes(x = Year, y = Count, color = tier_region)) +
  geom_path() +
  theme_minimal() +
  labs(y = "Total number of references",
       color = "") 

p

ggsave("../output/1h_sids_number_references.pdf", p,  width = 10, height = 7)

Table

t <- total_counts %>% 
  dplyr::filter(Year >= 2011) %>%
  dplyr::group_by(Year, tier_region) %>%
  dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                   health_references = sum(health_count, na.rm = T),
                   intersection_references = sum(intersection_count, na.rm = T)
  ) %>%
  dplyr::filter(!is.na(tier_region)) %>%
  dplyr::arrange(tier_region, Year)

colnames(t) <- c("Year", "Region", "Climate", "Health", "Intersection")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year Region Climate Health Intersection
2011 SIDS 274 455 21
2012 SIDS 428 579 18
2013 SIDS 350 842 40
2014 SIDS 376 618 34
2015 SIDS 350 607 29
2016 SIDS 203 357 32
2017 SIDS 258 561 18
2018 SIDS 417 748 47
2019 SIDS 676 1085 63
2020 SIDS 793 1288 105
2011 Tier 1 1657 3461 126
2012 Tier 1 1799 3477 126
2013 Tier 1 1590 4118 138
2014 Tier 1 2021 6124 136
2015 Tier 1 2287 7343 263
2016 Tier 1 2415 6739 276
2017 Tier 1 2485 6446 285
2018 Tier 1 2469 6014 222
2019 Tier 1 2937 5411 290
2020 Tier 1 3662 6332 370
2011 Tier 2 4973 7638 369
2012 Tier 2 4602 9329 285
2013 Tier 2 5696 9828 493
2014 Tier 2 5930 9485 322
2015 Tier 2 5516 9505 314
2016 Tier 2 6400 10721 432
2017 Tier 2 6292 10744 466
2018 Tier 2 6358 10888 571
2019 Tier 2 8451 13223 573
2020 Tier 2 9395 13899 729
readr::write_csv(t, "../output/1h_sids_number_references.csv")

i. Appendix - Proportion of references by SIDS, Tier 1 and Tier 2

Plot

## j. Appendix - Total number of regerences by by SIDS, Tier 1 and Tier 2 categories

p <- total_counts %>% 
  dplyr::filter(Year >= 2011) %>%
  dplyr::mutate(climate_n = ifelse(climate_count >= 1, 1, 0),
                health_n = ifelse(health_count >= 1, 1, 0),
                intersection_n = ifelse(intersection_count >= 1, 1, 0)
                ) %>%
  dplyr::group_by(Year, tier_region) %>%
  dplyr::summarize(total_counts = n(),
                   climate_prop = round(sum(climate_n, na.rm = T)/total_counts,2), 
                   health_prop = round(sum(health_n, na.rm = T)/total_counts,2),
                   intersection_prop = round(sum(intersection_n, na.rm = T)/total_counts,2)
  ) %>%
  tidyr::pivot_longer(cols = -c("Year", "tier_region"),
                      names_to = "Type", values_to = "Prop") %>%
  dplyr::mutate(Key = factor(dplyr::case_when(Type == "climate_prop" ~ "Climate",
                                              Type == "intersection_prop" ~ "Intersection",
                                              Type == "health_prop" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L)) %>%
  dplyr::filter(Key == "Intersection" & !is.na(tier_region)) %>%
  ggplot(aes(x = Year, y = Prop, color = tier_region)) +
  geom_line() +
  theme_minimal() +
  labs(y = "Proportion of companies, %",
       color = "") +
  scale_y_continuous(labels = scales::percent_format(), limits = c(0, 0.5))

p

ggsave("../output/1i_sids_prop_references.pdf", p,  width = 10, height = 7)

Table

t <- total_counts %>% 
  dplyr::filter(Year >= 2011) %>%
  dplyr::mutate(climate_n = ifelse(climate_count >= 1, 1, 0),
                health_n = ifelse(health_count >= 1, 1, 0),
                intersection_n = ifelse(intersection_count >= 1, 1, 0)
                ) %>%
  dplyr::group_by(Year, tier_region) %>%
  dplyr::summarize(total_counts = n(),
                   climate_prop = round(sum(climate_n, na.rm = T)/total_counts,2), 
                   health_prop = round(sum(health_n, na.rm = T)/total_counts,2),
                   intersection_prop = round(sum(intersection_n, na.rm = T)/total_counts,2)
  ) %>%
  dplyr::arrange(desc(tier_region), Year) %>%
  dplyr::filter(!is.na(tier_region)) 

colnames(t) <- c("Year", "Category", "Total documents", "Climate", "Health", "Intersection")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year Category Total documents Climate Health Intersection
2011 Tier 2 296 0.76 0.79 0.28
2012 Tier 2 374 0.75 0.79 0.20
2013 Tier 2 439 0.69 0.81 0.23
2014 Tier 2 462 0.68 0.81 0.19
2015 Tier 2 492 0.66 0.77 0.21
2016 Tier 2 518 0.68 0.79 0.24
2017 Tier 2 509 0.70 0.80 0.22
2018 Tier 2 513 0.70 0.78 0.27
2019 Tier 2 571 0.74 0.82 0.27
2020 Tier 2 522 0.75 0.83 0.36
2011 Tier 1 107 0.70 0.78 0.28
2012 Tier 1 144 0.66 0.80 0.26
2013 Tier 1 145 0.65 0.80 0.28
2014 Tier 1 150 0.65 0.79 0.21
2015 Tier 1 156 0.67 0.82 0.26
2016 Tier 1 168 0.67 0.83 0.26
2017 Tier 1 165 0.78 0.85 0.33
2018 Tier 1 179 0.70 0.81 0.30
2019 Tier 1 195 0.71 0.82 0.30
2020 Tier 1 184 0.83 0.90 0.42
2011 SIDS 16 0.81 0.94 0.31
2012 SIDS 24 0.71 0.88 0.25
2013 SIDS 30 0.67 0.77 0.30
2014 SIDS 27 0.52 0.78 0.30
2015 SIDS 34 0.56 0.79 0.21
2016 SIDS 30 0.57 0.77 0.20
2017 SIDS 29 0.66 0.90 0.38
2018 SIDS 34 0.74 0.94 0.38
2019 SIDS 50 0.74 0.96 0.36
2020 SIDS 45 0.73 0.89 0.49
readr::write_csv(t, "../output/1i_sids_prop_references.csv")

j. Appendix - Total number of regerences by HDI categories

Plot

## j. Appendix - Total number of regerences by HDI categories
p <- total_counts %>% 
  dplyr::filter(Year >= 2011) %>%
  dplyr::group_by(Year, hdi_level) %>%
  dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                   health_references = sum(health_count, na.rm = T),
                   intersection_references = sum(intersection_count, na.rm = T)
  ) %>%
  tidyr::pivot_longer(cols = -c("Year", "hdi_level"),
                      names_to = "Type", values_to = "Count") %>%
  dplyr::mutate(Key = factor(dplyr::case_when(Type == "climate_references" ~ "Climate",
                                              Type == "intersection_references" ~ "Intersection",
                                              Type == "health_references" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L),
                hdi_level = factor(hdi_level, levels = c("Very high human development",
                                                         "High human development",
                                                         "Medium human development",
                                                         "Low human development"))) %>%
  dplyr::filter(Key == "Intersection" & !is.na(hdi_level)) %>%
  ggplot(aes(x = Year, y = Count, color = hdi_level)) +
  geom_line() +
  theme_minimal() +
  labs(y = "Total number of references",
       color = "") 

p

ggsave("../output/1j_hdi_number_references.pdf", p,  width = 10, height = 7)

Table

t <- total_counts %>% 
  dplyr::filter(Year >= 2011) %>% 
  dplyr::group_by(Year, hdi_level) %>%
  dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                   health_references = sum(health_count, na.rm = T),
                   intersection_references = sum(intersection_count, na.rm = T)
  ) %>%
  dplyr::arrange(desc(hdi_level), Year) %>%
  dplyr::filter(!is.na(hdi_level))

colnames(t) <- c("Year", "HDI Level", "Climate", "Health", "Intersection")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year HDI Level Climate Health Intersection
2011 Very high human development 16600 20564 820
2012 Very high human development 18267 24889 833
2013 Very high human development 17807 26430 1106
2014 Very high human development 19867 31121 1094
2015 Very high human development 18624 30789 1097
2016 Very high human development 20204 32259 1333
2017 Very high human development 21492 34297 1465
2018 Very high human development 22757 36927 1531
2019 Very high human development 30285 41851 2100
2020 Very high human development 37984 51885 2939
2011 Medium human development 707 1318 60
2012 Medium human development 900 2034 52
2013 Medium human development 736 1879 65
2014 Medium human development 634 1900 74
2015 Medium human development 815 2376 95
2016 Medium human development 961 2526 96
2017 Medium human development 653 2261 77
2018 Medium human development 734 2382 91
2019 Medium human development 916 2290 80
2020 Medium human development 682 1641 115
2011 Low human development 29 131 5
2012 Low human development 42 133 3
2013 Low human development 13 148 0
2014 Low human development 10 113 0
2015 Low human development 30 175 7
2016 Low human development 53 155 3
2017 Low human development 56 143 10
2018 Low human development 140 398 16
2019 Low human development 149 472 13
2020 Low human development 28 122 13
2011 High human development 1568 3129 136
2012 High human development 1853 3793 101
2013 High human development 2015 4261 126
2014 High human development 2017 4633 138
2015 High human development 2071 5250 98
2016 High human development 2524 4890 137
2017 High human development 2460 4976 186
2018 High human development 2781 5443 188
2019 High human development 2767 6402 228
2020 High human development 3122 6478 296
readr::write_csv(t, "../output/1j_hdi_number_references.csv")

k. Appendix - Proportion of references by HDI categories

Plot

## j. Appendix - Total number of regerences by HDI categories

p <- total_counts %>% 
  dplyr::filter(Year >= 2011) %>%
  dplyr::mutate(climate_n = ifelse(climate_count >= 1, 1, 0),
                health_n = ifelse(health_count >= 1, 1, 0),
                intersection_n = ifelse(intersection_count >= 1, 1, 0)
                ) %>%
  dplyr::group_by(Year, hdi_level) %>%
  dplyr::summarize(total_counts = n(),
                   climate_prop = round(sum(climate_n, na.rm = T)/total_counts,2), 
                   health_prop = round(sum(health_n, na.rm = T)/total_counts,2),
                   intersection_prop = round(sum(intersection_n, na.rm = T)/total_counts,2)
  ) %>%
  tidyr::pivot_longer(cols = -c("Year", "hdi_level"),
                      names_to = "Type", values_to = "Prop") %>%
  dplyr::mutate(Key = factor(dplyr::case_when(Type == "climate_prop" ~ "Climate",
                                              Type == "intersection_prop" ~ "Intersection",
                                              Type == "health_prop" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L),
                hdi_level = factor(hdi_level, levels = c("Very high human development",
                                                         "High human development",
                                                         "Medium human development",
                                                         "Low human development"))) %>%
  dplyr::filter(Key == "Intersection" & !is.na(hdi_level)) %>%
  ggplot(aes(x = Year, y = Prop, color = hdi_level)) +
  geom_line() +
  theme_minimal() +
  labs(y = "Proportion of companies, %",
       color = "") +
  scale_y_continuous(labels = scales::percent_format(), limits = c(0, 0.5))

p

ggsave("../output/1k_hdi_prop_references.pdf", p,  width = 10, height = 7)

Table

t <- total_counts %>% 
  dplyr::filter(Year >= 2011) %>%
  dplyr::mutate(climate_n = ifelse(climate_count >= 1, 1, 0),
                health_n = ifelse(health_count >= 1, 1, 0),
                intersection_n = ifelse(intersection_count >= 1, 1, 0)
                ) %>%
  dplyr::group_by(Year, hdi_level) %>%
  dplyr::summarize(total_counts = n(),
                   climate_prop = round(sum(climate_n, na.rm = T)/total_counts,2), 
                   health_prop = round(sum(health_n, na.rm = T)/total_counts,2),
                   intersection_prop = round(sum(intersection_n, na.rm = T)/total_counts,2)
  ) %>%
  dplyr::arrange(desc(hdi_level), Year) %>%
  dplyr::filter(!is.na(hdi_level)) 

colnames(t) <- c("Year", "HDI Level", "Total documents", "Climate", "Health", "Intersection")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year HDI Level Total documents Climate Health Intersection
2011 Very high human development 795 0.77 0.84 0.28
2012 Very high human development 1065 0.75 0.82 0.24
2013 Very high human development 1207 0.71 0.81 0.22
2014 Very high human development 1304 0.70 0.80 0.23
2015 Very high human development 1369 0.70 0.81 0.25
2016 Very high human development 1472 0.68 0.80 0.24
2017 Very high human development 1521 0.72 0.80 0.26
2018 Very high human development 1540 0.73 0.82 0.30
2019 Very high human development 1741 0.74 0.84 0.30
2020 Very high human development 1654 0.79 0.86 0.41
2011 Medium human development 101 0.52 0.78 0.21
2012 Medium human development 136 0.54 0.85 0.20
2013 Medium human development 142 0.51 0.81 0.13
2014 Medium human development 148 0.51 0.80 0.11
2015 Medium human development 172 0.48 0.79 0.15
2016 Medium human development 172 0.54 0.81 0.16
2017 Medium human development 173 0.53 0.81 0.15
2018 Medium human development 166 0.52 0.84 0.15
2019 Medium human development 175 0.55 0.83 0.20
2020 Medium human development 123 0.54 0.84 0.20
2011 Low human development 9 0.56 0.78 0.22
2012 Low human development 13 0.38 0.77 0.08
2013 Low human development 24 0.17 0.71 0.00
2014 Low human development 25 0.20 0.64 0.00
2015 Low human development 24 0.46 0.79 0.12
2016 Low human development 28 0.36 0.68 0.11
2017 Low human development 29 0.31 0.76 0.10
2018 Low human development 29 0.45 0.79 0.24
2019 Low human development 39 0.46 0.79 0.15
2020 Low human development 19 0.47 0.63 0.21
2011 High human development 153 0.65 0.73 0.24
2012 High human development 211 0.58 0.70 0.21
2013 High human development 229 0.57 0.79 0.23
2014 High human development 248 0.54 0.76 0.17
2015 High human development 250 0.55 0.78 0.15
2016 High human development 304 0.52 0.70 0.18
2017 High human development 285 0.55 0.74 0.21
2018 High human development 301 0.55 0.70 0.21
2019 High human development 295 0.54 0.74 0.24
2020 High human development 267 0.59 0.76 0.30
readr::write_csv(t, "../output/1k_hdi_prop_references.csv")

l. Appendix - Number of references 2020 per sector

## f. Appendix - Number of references 2020 per sector
t <- total_counts %>% 
  dplyr::filter(Year == 2020) %>%
  dplyr::group_by(Sector, Year) %>%
  dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                   health_references = sum(health_count, na.rm = T),
                   intersection_references = sum(intersection_count, na.rm = T)
  ) %>%
  dplyr::select(Sector, health_references, climate_references, intersection_references) 

colnames(t) <- c("Sector", "Health", "Climate", "Intersection")

readr::write_csv(t, "../output/1l_sector_references_2020.csv")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Sector Health Climate Intersection
Aerospace & Defense 754 403 46
Alternative Energy 551 866 92
Automobiles & Parts 2032 2160 105
Banks 1079 1484 84
Beverages 927 562 37
Chemicals 3438 2078 191
Construction & Materials 3357 2699 192
Diversified 1789 1024 93
Electricity 1184 2041 77
Electronic & Electrical Equ… 1605 822 64
Equity Investment Instruments 80 99 12
Financial Services 3217 4243 210
Fixed Line Telecommunications 327 195 24
Food & Drug Retailers 244 195 16
Food Producers 2907 1282 202
Forestry & Paper 367 580 22
Gas, Water & Multiutilities 921 821 91
General Industrials 4532 2836 274
General Retailers 1470 1216 40
Health Care Equipment & Ser… 1751 356 45
Household Goods & Home Cons… 1072 1022 48
Industrial Engineering 1158 767 82
Industrial Goods & Services 12 4 0
Industrial Metals & Mining 1358 789 74
Industrial Transportation 1275 819 51
Leisure Goods 136 63 2
Life Insurance 651 330 41
Media 680 454 19
Mining 1150 594 55
Mobile Telecommunications 925 629 61
Nonequity Investment Instru… 112 37 3
Nonlife Insurance 413 260 23
Not Applicable 29 16 0
Oil & Gas Producers 1603 1490 114
Oil Equipment, Services & D… 594 435 24
Personal Goods 806 504 22
Pharmaceuticals & Biotechno… 6336 1125 280
Real Estate Investment & Se… 1638 1289 103
Real Estate Investment Trusts 232 241 24
Software & Computer Services 1404 1098 106
Support Services 3662 2174 200
Technology Hardware & Equip… 1632 1131 99
Travel & Leisure 744 601 17

m. Appendix - Average of references 2020 per sector

## g. Appendix - Average of references 2020 per sector
t <- total_counts %>% 
  dplyr::filter(Year == 2020) %>%
  dplyr::group_by(Sector, Year) %>%
  dplyr::summarize(climate_references = mean(climate_count, na.rm = T),
                   health_references = mean(health_count, na.rm = T),
                   intersection_references = mean(intersection_count, na.rm = T)
  ) %>%
  dplyr::mutate_if(is.numeric,round,1) %>%
  dplyr::select(Sector, health_references, climate_references, intersection_references) 


colnames(t) <-c("Sector", "Health, %", "Climate, %", "Intersection, %")

readr::write_csv(t, "../output/1m_avg_sector_references_2020.csv")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Sector Health, % Climate, % Intersection, %
Aerospace & Defense 47.1 25.2 2.9
Alternative Energy 24.0 37.7 4.0
Automobiles & Parts 48.4 51.4 2.5
Banks 21.6 29.7 1.7
Beverages 29.0 17.6 1.2
Chemicals 58.3 35.2 3.2
Construction & Materials 41.4 33.3 2.4
Diversified 19.7 11.3 1.0
Electricity 34.8 60.0 2.3
Electronic & Electrical Equ… 26.8 13.7 1.1
Equity Investment Instruments 8.9 11.0 1.3
Financial Services 24.4 32.1 1.6
Fixed Line Telecommunications 27.2 16.2 2.0
Food & Drug Retailers 61.0 48.8 4.0
Food Producers 37.3 16.4 2.6
Forestry & Paper 30.6 48.3 1.8
Gas, Water & Multiutilities 41.9 37.3 4.1
General Industrials 32.4 20.3 2.0
General Retailers 28.3 23.4 0.8
Health Care Equipment & Ser… 42.7 8.7 1.1
Household Goods & Home Cons… 35.7 34.1 1.6
Industrial Engineering 30.5 20.2 2.2
Industrial Goods & Services 6.0 2.0 0.0
Industrial Metals & Mining 52.2 30.3 2.8
Industrial Transportation 28.3 18.2 1.1
Leisure Goods 15.1 7.0 0.2
Life Insurance 65.1 33.0 4.1
Media 18.9 12.6 0.5
Mining 63.9 33.0 3.1
Mobile Telecommunications 37.0 25.2 2.4
Nonequity Investment Instru… 56.0 18.5 1.5
Nonlife Insurance 31.8 20.0 1.8
Not Applicable 29.0 16.0 0.0
Oil & Gas Producers 53.4 49.7 3.8
Oil Equipment, Services & D… 24.8 18.1 1.0
Personal Goods 17.5 11.0 0.5
Pharmaceuticals & Biotechno… 124.2 22.1 5.5
Real Estate Investment & Se… 35.6 28.0 2.2
Real Estate Investment Trusts 29.0 30.1 3.0
Software & Computer Services 15.4 12.1 1.2
Support Services 18.3 10.9 1.0
Technology Hardware & Equip… 32.6 22.6 2.0
Travel & Leisure 22.5 18.2 0.5

n. Appendix - Proportion of companies 2020 per sector

Plot

## h. Appendix - Proportion of companies 2020 per sector
p <- plot_df %>%
  dplyr::filter(Year >= "2020-01-01") %>% 
  ggplot(., aes(x = Sector, y = Prop, fill = Key)) +
  geom_bar(stat = "identity", position = "dodge") +
  theme_minimal() +
  scale_y_continuous(labels = scales::percent) +
  theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) +
  theme(legend.position = "bottom") +
  labs(fill = "",
       y = "Proportion of companies, %",
       x = "\nSector")

p

ggsave("../output/1n_prop_companies_sector.pdf", p,  width = 10, height = 7)

Table

t <- plot_df %>%
  dplyr::filter(Year >= "2020-01-01") %>%
  dplyr::select(Sector, Year, Key, Prop) %>%
  dplyr::mutate(Year = lubridate::year(Year), 
                Prop = round(Prop, 2)) %>%
  dplyr::arrange(Sector, Year) %>%
  tidyr::pivot_wider(names_from = "Key", values_from = "Prop") 

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Sector Year Climate Health Intersection
Aerospace & Defense 2020 0.72 0.89 0.39
Alternative Energy 2020 0.91 0.96 0.70
Automobiles & Parts 2020 0.83 0.89 0.55
Banks 2020 0.87 0.85 0.42
Beverages 2020 0.61 0.86 0.33
Chemicals 2020 0.85 0.89 0.68
Construction & Materials 2020 0.78 0.83 0.44
Diversified 2020 0.78 0.84 0.31
Electricity 2020 0.79 0.79 0.51
Electronic & Electrical Equ… 2020 0.66 0.85 0.29
Equity Investment Instruments 2020 0.60 0.90 0.30
Financial Services 2020 0.80 0.77 0.37
Fixed Line Telecommunications 2020 0.69 0.85 0.38
Food & Drug Retailers 2020 1.00 1.00 0.75
Food Producers 2020 0.76 0.89 0.47
Forestry & Paper 2020 0.71 0.86 0.36
Gas, Water & Multiutilities 2020 0.76 0.88 0.60
General Industrials 2020 0.77 0.86 0.39
General Retailers 2020 0.71 0.81 0.31
Health Care Equipment & Ser… 2020 0.70 0.89 0.37
Household Goods & Home Cons… 2020 0.74 0.94 0.45
Industrial Engineering 2020 0.67 0.73 0.33
Industrial Goods & Services 2020 0.50 1.00 0.00
Industrial Metals & Mining 2020 0.89 0.89 0.46
Industrial Transportation 2020 0.73 0.81 0.33
Leisure Goods 2020 0.64 0.73 0.18
Life Insurance 2020 0.91 0.64 0.36
Media 2020 0.73 0.75 0.14
Mining 2020 0.89 0.89 0.58
Mobile Telecommunications 2020 0.81 0.96 0.50
Nonequity Investment Instru… 2020 0.50 1.00 0.50
Nonlife Insurance 2020 0.77 1.00 0.38
Not Applicable 2020 1.00 1.00 0.00
Oil & Gas Producers 2020 0.84 0.91 0.72
Oil Equipment, Services & D… 2020 0.67 0.89 0.37
Personal Goods 2020 0.70 0.81 0.22
Pharmaceuticals & Biotechno… 2020 0.82 0.93 0.60
Real Estate Investment & Se… 2020 0.78 0.92 0.50
Real Estate Investment Trusts 2020 0.70 0.80 0.60
Software & Computer Services 2020 0.63 0.83 0.25
Support Services 2020 0.66 0.81 0.27
Technology Hardware & Equip… 2020 0.83 0.85 0.36
Travel & Leisure 2020 0.76 0.79 0.16
readr::write_csv(t, "../output/1n_prop_companies_sector.csv")

o. Table with COVID and Gender dictionary counts in intersection documents

intersection_covid %>% knitr::kable(col.names = c("Year", "Total documents", "Keyword hits", "Flagged documents (N)", "Flagged documents (Prop)")) %>%
  kableExtra::add_header_above(c("", "", "COVID dictionary" = 3)) %>% 
  kableExtra::kable_styling()
COVID dictionary
Year Total documents Keyword hits Flagged documents (N) Flagged documents (Prop)
2020 791 128 113 0.1428571
intersection_gender %>% knitr::kable(col.names = c("Year", "Total documents", "Keyword hits", "Flagged documents (N)", "Flagged documents (Prop)")) %>%
  kableExtra::add_header_above(c("", "", "Gender dictionary" = 3)) %>% 
  kableExtra::kable_styling()
Gender dictionary
Year Total documents Keyword hits Flagged documents (N) Flagged documents (Prop)
2011 282 26 24 0.09
2012 327 20 17 0.05
2013 343 29 21 0.06
2014 357 26 17 0.05
2015 408 37 27 0.07
2016 440 51 40 0.09
2017 484 57 48 0.10
2018 553 71 59 0.11
2019 637 151 123 0.19
2020 791 113 99 0.13
readr::write_csv(intersection_covid, "../output/1o_intersection_covid.csv")
readr::write_csv(intersection_gender, "../output/1o_intersection_gender.csv")

p <- ggplot(intersection_gender, aes(x = year, y = prop_doct, group = 1)) +
  geom_line(color = "#cc0055") +
  theme_minimal() +
  labs(x= "Year",
       y = "Proportion of documents\n Gender mention in intersection, %\n") +
  scale_y_continuous(labels = scales::percent_format(), limits = c(0, 0.25))

p

ggsave("../output/1o_prop_intersecion_gender.pdf", p,  width = 10, height = 7)

Health Care Sector

These are the figures generated with the Health Care Equipment and Services Sector

p. Main text - Proportion of companies, % (Health Care Sector)

Plot

## a. Main text - Proportion of companies, %
p <- plot_df %>% 
  dplyr::filter(Sector == "Health Care Equipment & Ser...") %>%
  ggplot(aes(x = Year, y = Prop, color = Key)) +
  geom_line(aes(linetype = Key)) +
  scale_linetype_manual(values = c("solid", "longdash", "twodash")) +
  ggplot2::annotate("text", x = as.Date("2013-05-31"), y = 0.85, label = "Health", color = "#619cff") +
  ggplot2::annotate("text", x = as.Date("2013-05-31"), y = 0.48, label = "Climate Change", color = "darkgreen") +
  ggplot2::annotate("text", x = as.Date("2012-12-31"), y = 0.1, label = "Intersection", color = "red") +
  scale_y_continuous(labels = scales::percent_format()) +
  theme_minimal() +
  theme(legend.position = "none") +
  labs(y = "Proportion of companies, %") 

p

ggsave("../output/2p_prop_of_companies.pdf", p,  width = 10, height = 7)

Table

t <- plot_df %>%
  dplyr::filter(Sector == "Health Care Equipment & Ser...") %>%
  dplyr::select(Year, Key, Prop) %>%
  dplyr::mutate(Prop = round(Prop, 2),
                Year = lubridate::year(Year)) %>%
  tidyr::pivot_wider(id_cols = Year, names_from = "Key", values_from = "Prop")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year Climate Health Intersection
2011 0.57 1.00 0.00
2012 0.50 0.89 0.22
2013 0.34 0.78 0.16
2014 0.33 0.80 0.13
2015 0.47 0.87 0.17
2016 0.50 0.78 0.19
2017 0.56 0.85 0.09
2018 0.73 0.89 0.35
2019 0.69 0.95 0.31
2020 0.70 0.89 0.37
readr::write_csv(t, "../output/2p_prop_of_companies.csv")

q. Appendix - Total number of references (Health Care Sector)

Plot

## b. Appendix - Total number of references
p <- reference_df %>% 
  dplyr::filter(Sector == "Health Care Equipment & Ser...") %>%
  ggplot(aes(x = Year, y = Count, color = Key)) +
  geom_line(aes(linetype = Key))  +
  scale_linetype_manual(values = c("solid", "longdash", "twodash")) +
  ggplot2::annotate("text", x = as.Date("2011-05-31"), y = 500, label = "Health", color = "#619cff") +
  ggplot2::annotate("text", x = as.Date("2013-05-31"), y = 250, label = "Climate Change", color = "darkgreen") +
  ggplot2::annotate("text", x = as.Date("2016-12-31"), y = 75, label = "Intersection", color = "red") +
  theme_minimal() +
  theme(legend.position = "none") +
  labs(y = "Total number of references") 

p

ggsave("../output/2q_number_of_references.pdf", p,  width = 10, height = 7)

Table

t <- reference_df %>% 
  dplyr::filter(Sector == "Health Care Equipment & Ser...") %>%
  dplyr::select(Year, Key, Count) %>%
  dplyr::mutate(Year = lubridate::year(Year)) %>%
  tidyr::pivot_wider(id_cols = Year, names_from = "Key", values_from = "Count") 

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year Climate Health Intersection
2011 90 377 0
2012 82 478 7
2013 139 908 40
2014 152 1248 66
2015 195 1277 27
2016 162 891 27
2017 279 1112 5
2018 314 1870 48
2019 352 1979 45
2020 356 1751 45
readr::write_csv(t, "../output/2q_number_of_references.csv")

r. Appendix - Total number of references (Intersection) — (Health Care Sector)

Plot

## c. Appendix - Total number of references (Intersection)
p <- reference_df %>% 
  dplyr::filter(Sector == "Health Care Equipment & Ser..." & Key == "Intersection") %>%
  ggplot(aes(x = Year, y = Count, color = Key)) +
  geom_line() +
  ggplot2::annotate("text", x = as.Date("2013-12-31"), y = 18, label = "Intersection", color = "red") +
  theme_minimal() +
  theme(legend.position = "none") +
  labs(y = "Total number of references") 

p

ggsave("../output/2r_number_of_references_intersection.pdf", p,  width = 10, height = 7)

Table

t <- reference_df %>% 
  dplyr::filter(Sector == "Health Care Equipment & Ser..." & Key == "Intersection") %>%
  dplyr::mutate(Year = lubridate::year(Year)) %>%
  dplyr::select(Sector, Year, Count) 

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Sector Year Count
Health Care Equipment & Ser… 2011 0
Health Care Equipment & Ser… 2012 7
Health Care Equipment & Ser… 2013 40
Health Care Equipment & Ser… 2014 66
Health Care Equipment & Ser… 2015 27
Health Care Equipment & Ser… 2016 27
Health Care Equipment & Ser… 2017 5
Health Care Equipment & Ser… 2018 48
Health Care Equipment & Ser… 2019 45
Health Care Equipment & Ser… 2020 45
readr::write_csv(t, "../output/2r_number_of_references_intersection.csv")

s. Appendix - Average number of references (Health Care Sector)

Plot

## d. Appendix - Average number of references
p <- reference_df %>% 
  dplyr::filter(Sector == "Health Care Equipment & Ser...") %>%
  ggplot(aes(x = Year, y = Avg, color = Key)) +
  geom_line(aes(linetype = Key)) +
  scale_linetype_manual(values = c("solid", "longdash", "twodash")) +
  ggplot2::annotate("text", x = as.Date("2011-05-31"), y = 32, label = "Health", color = "#619cff") +
  ggplot2::annotate("text", x = as.Date("2012-05-31"), y = 8, label = "Climate Change", color = "darkgreen") +
  ggplot2::annotate("text", x = as.Date("2016-12-31"), y = 3, label = "Intersection", color = "red") +
  theme_minimal() +
  theme(legend.position = "none") +
  labs(y = "Average number of references") 

p

ggsave("../output/2s_avg_references.pdf", p,  width = 10, height = 7)

Table

t <- reference_df %>% 
  dplyr::filter(Sector == "Health Care Equipment & Ser..." & Key == "Intersection") %>%
  dplyr::mutate(Year = lubridate::year(Year),
                Avg = round(Avg, 2)) %>%
  dplyr::select(Sector, Year, Avg) 

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Sector Year Avg
Health Care Equipment & Ser… 2011 0.00
Health Care Equipment & Ser… 2012 0.44
Health Care Equipment & Ser… 2013 1.60
Health Care Equipment & Ser… 2014 2.75
Health Care Equipment & Ser… 2015 1.04
Health Care Equipment & Ser… 2016 1.00
Health Care Equipment & Ser… 2017 0.17
Health Care Equipment & Ser… 2018 1.37
Health Care Equipment & Ser… 2019 1.12
Health Care Equipment & Ser… 2020 1.10
readr::write_csv(t, "../output/2s_avg_references.csv")

t. Appendix - Total number of references by WHO region (Health Care Sector)

Plot

## e. Appendix - Total number of references by WHO region
p <- total_counts %>% 
  dplyr::filter(Year >= 2011 & Sector == "Health Care Equipment & Ser...") %>%
  dplyr::group_by(Sector, Year, who_region) %>%
  dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                   health_references = sum(health_count, na.rm = T),
                   intersection_references = sum(intersection_count, na.rm = T)
  ) %>%
  tidyr::pivot_longer(cols = -c("Sector", "Year", "who_region"),
                      names_to = "Type", values_to = "Count") %>%
  dplyr::mutate(Key = factor(dplyr::case_when(Type == "climate_references" ~ "Climate",
                                              Type == "intersection_references" ~ "Intersection",
                                              Type == "health_references" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L)) %>%
  dplyr::filter(Key == "Intersection") %>%
  ggplot(aes(x = Year, y = Count, color = who_region)) +
  geom_path() +
  theme_minimal() +
  labs(y = "Total number of references",
       color = "WHO Region") 

p

ggsave("../output/2t_who_number_references.pdf", p,  width = 10, height = 7)

Table

t <- total_counts %>% 
  dplyr::filter(Year >= 2011 & Sector == "Health Care Equipment & Ser...") %>%
  dplyr::group_by(Sector, Year, who_region) %>%
  dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                   health_references = sum(health_count, na.rm = T),
                   intersection_references = sum(intersection_count, na.rm = T)
  ) %>%
  dplyr::arrange(who_region, Year) 

colnames(t) <- c("Sector", "Year", "WHO Region", "Climate", "Health", "Intersection")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Sector Year WHO Region Climate Health Intersection
Health Care Equipment & Ser… 2011 Africa 1 48 0
Health Care Equipment & Ser… 2012 Africa 3 115 1
Health Care Equipment & Ser… 2013 Africa 0 86 0
Health Care Equipment & Ser… 2014 Africa 24 201 44
Health Care Equipment & Ser… 2015 Africa 32 175 12
Health Care Equipment & Ser… 2016 Africa 2 53 2
Health Care Equipment & Ser… 2017 Africa 0 9 0
Health Care Equipment & Ser… 2018 Africa 8 107 1
Health Care Equipment & Ser… 2019 Africa 33 144 3
Health Care Equipment & Ser… 2020 Africa 19 68 2
Health Care Equipment & Ser… 2011 Eastern Mediterranean 0 12 0
Health Care Equipment & Ser… 2012 Eastern Mediterranean 0 10 0
Health Care Equipment & Ser… 2013 Eastern Mediterranean 9 195 0
Health Care Equipment & Ser… 2014 Eastern Mediterranean 0 2 0
Health Care Equipment & Ser… 2015 Eastern Mediterranean 0 3 0
Health Care Equipment & Ser… 2019 Eastern Mediterranean 0 57 0
Health Care Equipment & Ser… 2020 Eastern Mediterranean 0 6 0
Health Care Equipment & Ser… 2011 Europe 19 67 0
Health Care Equipment & Ser… 2012 Europe 28 114 0
Health Care Equipment & Ser… 2013 Europe 49 245 8
Health Care Equipment & Ser… 2014 Europe 71 608 10
Health Care Equipment & Ser… 2015 Europe 87 436 4
Health Care Equipment & Ser… 2016 Europe 78 455 4
Health Care Equipment & Ser… 2017 Europe 127 519 1
Health Care Equipment & Ser… 2018 Europe 157 1026 25
Health Care Equipment & Ser… 2019 Europe 189 760 21
Health Care Equipment & Ser… 2020 Europe 220 1016 34
Health Care Equipment & Ser… 2012 Latin America and the Caribbean 15 117 3
Health Care Equipment & Ser… 2013 Latin America and the Caribbean 5 122 1
Health Care Equipment & Ser… 2014 Latin America and the Caribbean 0 0 0
Health Care Equipment & Ser… 2015 Latin America and the Caribbean 3 163 0
Health Care Equipment & Ser… 2016 Latin America and the Caribbean 0 0 0
Health Care Equipment & Ser… 2017 Latin America and the Caribbean 0 0 0
Health Care Equipment & Ser… 2018 Latin America and the Caribbean 3 10 0
Health Care Equipment & Ser… 2019 Latin America and the Caribbean 7 267 0
Health Care Equipment & Ser… 2020 Latin America and the Caribbean 3 187 0
Health Care Equipment & Ser… 2011 North America 2 8 0
Health Care Equipment & Ser… 2012 North America 2 8 1
Health Care Equipment & Ser… 2013 North America 0 10 0
Health Care Equipment & Ser… 2014 North America 0 0 0
Health Care Equipment & Ser… 2017 North America 29 42 2
Health Care Equipment & Ser… 2018 North America 25 70 10
Health Care Equipment & Ser… 2019 North America 35 447 13
Health Care Equipment & Ser… 2020 North America 19 97 1
Health Care Equipment & Ser… 2011 South-East Asia 2 44 0
Health Care Equipment & Ser… 2012 South-East Asia 0 4 0
Health Care Equipment & Ser… 2013 South-East Asia 0 0 0
Health Care Equipment & Ser… 2014 South-East Asia 0 112 0
Health Care Equipment & Ser… 2015 South-East Asia 0 170 0
Health Care Equipment & Ser… 2016 South-East Asia 10 43 0
Health Care Equipment & Ser… 2017 South-East Asia 10 47 0
Health Care Equipment & Ser… 2018 South-East Asia 10 46 0
Health Care Equipment & Ser… 2019 South-East Asia 10 61 0
Health Care Equipment & Ser… 2020 South-East Asia 6 8 2
Health Care Equipment & Ser… 2011 Western Pacific 66 198 0
Health Care Equipment & Ser… 2012 Western Pacific 34 110 2
Health Care Equipment & Ser… 2013 Western Pacific 76 250 31
Health Care Equipment & Ser… 2014 Western Pacific 57 325 12
Health Care Equipment & Ser… 2015 Western Pacific 73 330 11
Health Care Equipment & Ser… 2016 Western Pacific 72 340 21
Health Care Equipment & Ser… 2017 Western Pacific 113 495 2
Health Care Equipment & Ser… 2018 Western Pacific 111 611 12
Health Care Equipment & Ser… 2019 Western Pacific 78 243 8
Health Care Equipment & Ser… 2020 Western Pacific 89 369 6
readr::write_csv(t, "../output/2t_who_number_references.csv")

u. Appendix - Proportion references by WHO region (Health Care Sector)

Plot

p <- total_counts %>% 
  dplyr::filter(Year >= 2011 & Sector == "Health Care Equipment & Ser...") %>%
  dplyr::mutate(climate_n = ifelse(climate_count >= 1, 1, 0),
                health_n = ifelse(health_count >= 1, 1, 0),
                intersection_n = ifelse(intersection_count >= 1, 1, 0)
                ) %>%
  dplyr::group_by(Year, who_region) %>%
  dplyr::summarize(total_counts = n(),
                   climate_prop = round(sum(climate_n, na.rm = T)/total_counts,2), 
                   health_prop = round(sum(health_n, na.rm = T)/total_counts,2),
                   intersection_prop = round(sum(intersection_n, na.rm = T)/total_counts,2)
  ) %>%
  tidyr::pivot_longer(cols = -c("Year", "who_region"),
                      names_to = "Type", values_to = "Prop") %>%
  dplyr::mutate(Key = factor(dplyr::case_when(Type == "climate_prop" ~ "Climate",
                                              Type == "intersection_prop" ~ "Intersection",
                                              Type == "health_prop" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L)) %>%
  dplyr::filter(Key == "Intersection" & !is.na(who_region)) %>%
  ggplot(aes(x = Year, y = Prop, color = who_region)) +
  geom_line() +
  theme_minimal() +
  labs(y = "Proportion of companies, %",
       color = "") +
  scale_y_continuous(labels = scales::percent_format(), limits = c(0, 1))

p

ggsave("../output/2u_who_prop_references.pdf", p,  width = 10, height = 7)

Table

t <- total_counts %>% 
  dplyr::filter(Year >= 2011 & Sector == "Health Care Equipment & Ser...") %>%
  dplyr::mutate(climate_n = ifelse(climate_count >= 1, 1, 0),
                health_n = ifelse(health_count >= 1, 1, 0),
                intersection_n = ifelse(intersection_count >= 1, 1, 0)
                ) %>%
  dplyr::group_by(Year, who_region) %>%
  dplyr::summarize(total_counts = n(),
                   climate_prop = round(sum(climate_n, na.rm = T)/total_counts,2), 
                   health_prop = round(sum(health_n, na.rm = T)/total_counts,2),
                   intersection_prop = round(sum(intersection_n, na.rm = T)/total_counts,2)
  ) %>%
  dplyr::arrange(desc(who_region), Year) %>%
  dplyr::filter(!is.na(who_region)) 

colnames(t) <- c("Year", "WHO Region", "Total documents", "Climate", "Health", "Intersection")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year WHO Region Total documents Climate Health Intersection
2011 Western Pacific 3 1.00 1.00 0.00
2012 Western Pacific 1 1.00 1.00 1.00
2013 Western Pacific 5 0.80 0.80 0.40
2014 Western Pacific 3 0.67 0.67 0.33
2015 Western Pacific 2 1.00 1.00 0.50
2016 Western Pacific 5 1.00 0.80 0.60
2017 Western Pacific 5 0.60 0.60 0.20
2018 Western Pacific 5 1.00 1.00 0.40
2019 Western Pacific 5 0.80 0.80 0.40
2020 Western Pacific 4 1.00 1.00 0.25
2011 South-East Asia 2 0.50 1.00 0.00
2012 South-East Asia 1 0.00 1.00 0.00
2013 South-East Asia 1 0.00 0.00 0.00
2014 South-East Asia 2 0.00 1.00 0.00
2015 South-East Asia 2 0.00 1.00 0.00
2016 South-East Asia 2 0.50 1.00 0.00
2017 South-East Asia 2 0.50 1.00 0.00
2018 South-East Asia 2 0.50 1.00 0.00
2019 South-East Asia 2 0.50 1.00 0.00
2020 South-East Asia 2 1.00 1.00 0.50
2011 North America 1 1.00 1.00 0.00
2012 North America 2 0.50 1.00 0.50
2013 North America 3 0.00 0.67 0.00
2014 North America 1 0.00 0.00 0.00
2017 North America 1 1.00 1.00 1.00
2018 North America 2 1.00 1.00 1.00
2019 North America 3 1.00 1.00 0.67
2020 North America 4 1.00 1.00 0.25
2012 Latin America and the Caribbean 2 0.50 0.50 0.50
2013 Latin America and the Caribbean 3 0.33 0.33 0.33
2014 Latin America and the Caribbean 1 0.00 0.00 0.00
2015 Latin America and the Caribbean 5 0.20 0.40 0.00
2016 Latin America and the Caribbean 2 0.00 0.00 0.00
2017 Latin America and the Caribbean 2 0.00 0.00 0.00
2018 Latin America and the Caribbean 4 0.50 0.25 0.00
2019 Latin America and the Caribbean 3 0.67 0.67 0.00
2020 Latin America and the Caribbean 3 0.67 0.67 0.00
2011 Europe 5 0.40 1.00 0.00
2012 Europe 10 0.50 0.90 0.00
2013 Europe 16 0.31 0.88 0.12
2014 Europe 18 0.39 0.83 0.11
2015 Europe 15 0.60 0.93 0.20
2016 Europe 19 0.47 0.79 0.11
2017 Europe 21 0.67 0.95 0.05
2018 Europe 20 0.80 0.95 0.40
2019 Europe 22 0.82 1.00 0.36
2020 Europe 29 0.66 0.86 0.45
2011 Eastern Mediterranean 2 0.00 1.00 0.00
2012 Eastern Mediterranean 1 0.00 1.00 0.00
2013 Eastern Mediterranean 3 0.33 1.00 0.00
2014 Eastern Mediterranean 1 0.00 1.00 0.00
2015 Eastern Mediterranean 1 0.00 1.00 0.00
2019 Eastern Mediterranean 1 0.00 1.00 0.00
2020 Eastern Mediterranean 1 0.00 1.00 0.00
2011 Africa 1 1.00 1.00 0.00
2012 Africa 1 1.00 1.00 1.00
2013 Africa 1 0.00 1.00 0.00
2014 Africa 4 0.25 1.00 0.25
2015 Africa 5 0.40 1.00 0.20
2016 Africa 4 0.25 1.00 0.25
2017 Africa 3 0.00 1.00 0.00
2018 Africa 4 0.25 1.00 0.25
2019 Africa 6 0.17 1.00 0.17
2020 Africa 3 0.33 1.00 0.33
readr::write_csv(t, "../output/2u_who_prop_references.csv")

v. Appendix - Total number of regerences by SIDS, Tier 1 and Tier 2 (Health Care Sector)

Plot

## i. Appendix - Total number of regerences by SIDS, Tier 1 and Tier 2
p <- total_counts %>% 
  dplyr::filter(Year >= 2011 & Sector == "Health Care Equipment & Ser...") %>%
  dplyr::group_by(Sector, Year, tier_region) %>%
  dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                   health_references = sum(health_count, na.rm = T),
                   intersection_references = sum(intersection_count, na.rm = T)
  ) %>%
  tidyr::pivot_longer(cols = -c("Sector", "Year", "tier_region"),
                      names_to = "Type", values_to = "Count") %>%
  dplyr::mutate(Key = factor(dplyr::case_when(Type == "climate_references" ~ "Climate",
                                              Type == "intersection_references" ~ "Intersection",
                                              Type == "health_references" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L)) %>%
  dplyr::filter(Key == "Intersection" & !is.na(tier_region)) %>%
  ggplot(aes(x = Year, y = Count, color = tier_region)) +
  geom_path() +
  theme_minimal() +
  labs(y = "Total number of references",
       color = "") 

p

ggsave("../output/2v_sids_number_references.pdf", p,  width = 10, height = 7)

Table

t <- total_counts %>% 
  dplyr::filter(Year >= 2011 & Sector == "Health Care Equipment & Ser...") %>%
  dplyr::group_by(Sector, Year, tier_region) %>%
  dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                   health_references = sum(health_count, na.rm = T),
                   intersection_references = sum(intersection_count, na.rm = T)
  ) %>%
  dplyr::filter(!is.na(tier_region)) %>%
  dplyr::arrange(tier_region, Year) 

colnames(t) <- c("Sector", "Year", "Region", "Climate", "Health", "Intersection")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Sector Year Region Climate Health Intersection
Health Care Equipment & Ser… 2018 SIDS 1 8 0
Health Care Equipment & Ser… 2019 SIDS 4 10 2
Health Care Equipment & Ser… 2011 Tier 1 2 8 0
Health Care Equipment & Ser… 2012 Tier 1 2 8 1
Health Care Equipment & Ser… 2013 Tier 1 2 16 0
Health Care Equipment & Ser… 2014 Tier 1 0 0 0
Health Care Equipment & Ser… 2016 Tier 1 2 0 0
Health Care Equipment & Ser… 2017 Tier 1 29 42 2
Health Care Equipment & Ser… 2018 Tier 1 25 70 10
Health Care Equipment & Ser… 2019 Tier 1 35 447 13
Health Care Equipment & Ser… 2020 Tier 1 19 97 1
Health Care Equipment & Ser… 2011 Tier 2 19 44 0
Health Care Equipment & Ser… 2012 Tier 2 35 180 3
Health Care Equipment & Ser… 2013 Tier 2 39 234 2
Health Care Equipment & Ser… 2014 Tier 2 49 428 10
Health Care Equipment & Ser… 2015 Tier 2 55 353 1
Health Care Equipment & Ser… 2016 Tier 2 44 197 2
Health Care Equipment & Ser… 2017 Tier 2 39 197 0
Health Care Equipment & Ser… 2018 Tier 2 69 420 21
Health Care Equipment & Ser… 2019 Tier 2 120 543 14
Health Care Equipment & Ser… 2020 Tier 2 42 521 14
readr::write_csv(t, "../output/2v_sids_number_references.csv")

w. Appendix - Proportion references by by SIDS, Tier 1 and Tier 2 (Health Care Sector)

Plot

p <- total_counts %>% 
  dplyr::filter(Year >= 2011 & Sector == "Health Care Equipment & Ser...") %>%
  dplyr::mutate(climate_n = ifelse(climate_count >= 1, 1, 0),
                health_n = ifelse(health_count >= 1, 1, 0),
                intersection_n = ifelse(intersection_count >= 1, 1, 0)
                ) %>%
  dplyr::group_by(Year, tier_region) %>%
  dplyr::summarize(total_counts = n(),
                   climate_prop = round(sum(climate_n, na.rm = T)/total_counts,2), 
                   health_prop = round(sum(health_n, na.rm = T)/total_counts,2),
                   intersection_prop = round(sum(intersection_n, na.rm = T)/total_counts,2)
  ) %>%
  tidyr::pivot_longer(cols = -c("Year", "tier_region"),
                      names_to = "Type", values_to = "Prop") %>%
  dplyr::mutate(Key = factor(dplyr::case_when(Type == "climate_prop" ~ "Climate",
                                              Type == "intersection_prop" ~ "Intersection",
                                              Type == "health_prop" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L)) %>%
  dplyr::filter(Key == "Intersection" & !is.na(tier_region)) %>%
  ggplot(aes(x = Year, y = Prop, color = tier_region)) +
  geom_line() +
  theme_minimal() +
  labs(y = "Proportion of companies, %",
       color = "") +
  scale_y_continuous(labels = scales::percent_format(), limits = c(0, 1))

p

ggsave("../output/2w_sids_prop_references.pdf", p,  width = 10, height = 7)

Table

t <- total_counts %>% 
  dplyr::filter(Year >= 2011 & Sector == "Health Care Equipment & Ser...") %>%
  dplyr::mutate(climate_n = ifelse(climate_count >= 1, 1, 0),
                health_n = ifelse(health_count >= 1, 1, 0),
                intersection_n = ifelse(intersection_count >= 1, 1, 0)
                ) %>%
  dplyr::group_by(Year, tier_region) %>%
  dplyr::summarize(total_counts = n(),
                   climate_prop = round(sum(climate_n, na.rm = T)/total_counts,2), 
                   health_prop = round(sum(health_n, na.rm = T)/total_counts,2),
                   intersection_prop = round(sum(intersection_n, na.rm = T)/total_counts,2)
  ) %>%
  dplyr::arrange(desc(tier_region), Year) %>%
  dplyr::filter(!is.na(tier_region)) 

colnames(t) <- c("Year", "Category", "Total documents", "Climate", "Health", "Intersection")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year Category Total documents Climate Health Intersection
2011 Tier 2 3 0.67 1.00 0.00
2012 Tier 2 6 0.67 0.83 0.17
2013 Tier 2 11 0.36 0.64 0.18
2014 Tier 2 10 0.50 0.80 0.20
2015 Tier 2 12 0.50 0.75 0.08
2016 Tier 2 8 0.50 0.50 0.12
2017 Tier 2 9 0.44 0.89 0.00
2018 Tier 2 8 0.88 0.88 0.62
2019 Tier 2 11 0.91 1.00 0.36
2020 Tier 2 12 0.67 0.83 0.25
2011 Tier 1 1 1.00 1.00 0.00
2012 Tier 1 2 0.50 1.00 0.50
2013 Tier 1 6 0.33 0.67 0.00
2014 Tier 1 2 0.00 0.00 0.00
2016 Tier 1 1 1.00 0.00 0.00
2017 Tier 1 1 1.00 1.00 1.00
2018 Tier 1 2 1.00 1.00 1.00
2019 Tier 1 3 1.00 1.00 0.67
2020 Tier 1 4 1.00 1.00 0.25
2018 SIDS 1 1.00 1.00 0.00
2019 SIDS 1 1.00 1.00 1.00
readr::write_csv(t, "../output/2w_sids_prop_references.csv")

x. Appendix - Total number of regerences by HDI categories (Health Care Sector)

Plot

## j. Appendix - Total number of regerences by HDI categories
p <- total_counts %>% 
  dplyr::filter(Year >= 2011 & Sector == "Health Care Equipment & Ser...") %>%
  dplyr::group_by(Sector, Year, hdi_level) %>%
  dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                   health_references = sum(health_count, na.rm = T),
                   intersection_references = sum(intersection_count, na.rm = T)
  ) %>%
  tidyr::pivot_longer(cols = -c("Sector", "Year", "hdi_level"),
                      names_to = "Type", values_to = "Count") %>%
  dplyr::mutate(Key = factor(dplyr::case_when(Type == "climate_references" ~ "Climate",
                                              Type == "intersection_references" ~ "Intersection",
                                              Type == "health_references" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L),
                hdi_level = factor(hdi_level, levels = c("Very high human development",
                                                         "High human development",
                                                         "Medium human development",
                                                         "Low human development"))) %>%
  dplyr::filter(Key == "Intersection" & !is.na(hdi_level)) %>%
  ggplot(aes(x = Year, y = Count, color = hdi_level)) +
  geom_path() +
  theme_minimal() +
  labs(y = "Total number of references",
       color = "") 
p

ggsave("../output/2x_hdi_number_references.pdf", p,  width = 10, height = 7)

Table

total_counts %>% 
  dplyr::filter(Year >= 2011 & Sector == "Health Care Equipment & Ser...") %>%
  dplyr::group_by(Sector, Year, hdi_level) %>%
  dplyr::summarize(climate_references = sum(climate_count, na.rm = T),
                   health_references = sum(health_count, na.rm = T),
                   intersection_references = sum(intersection_count, na.rm = T)
  ) %>%
  dplyr::filter(!is.na(hdi_level)) %>%
  dplyr::arrange(hdi_level, Year) 
colnames(t) <- c("Sector", "Year", "HDI Level", "Climate", "Health", "Intersection")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Sector Year HDI Level Climate Health Intersection
2011 Tier 2 3 0.67 1.00 0.00
2012 Tier 2 6 0.67 0.83 0.17
2013 Tier 2 11 0.36 0.64 0.18
2014 Tier 2 10 0.50 0.80 0.20
2015 Tier 2 12 0.50 0.75 0.08
2016 Tier 2 8 0.50 0.50 0.12
2017 Tier 2 9 0.44 0.89 0.00
2018 Tier 2 8 0.88 0.88 0.62
2019 Tier 2 11 0.91 1.00 0.36
2020 Tier 2 12 0.67 0.83 0.25
2011 Tier 1 1 1.00 1.00 0.00
2012 Tier 1 2 0.50 1.00 0.50
2013 Tier 1 6 0.33 0.67 0.00
2014 Tier 1 2 0.00 0.00 0.00
2016 Tier 1 1 1.00 0.00 0.00
2017 Tier 1 1 1.00 1.00 1.00
2018 Tier 1 2 1.00 1.00 1.00
2019 Tier 1 3 1.00 1.00 0.67
2020 Tier 1 4 1.00 1.00 0.25
2018 SIDS 1 1.00 1.00 0.00
2019 SIDS 1 1.00 1.00 1.00
readr::write_csv(t, "../output/2x_hdi_number_references.csv")

y. Appendix - Proportion references by HDI categories (Health Care Sector)

Plot

p <- total_counts %>% 
  dplyr::filter(Year >= 2011 & Sector == "Health Care Equipment & Ser...") %>%
  dplyr::mutate(climate_n = ifelse(climate_count >= 1, 1, 0),
                health_n = ifelse(health_count >= 1, 1, 0),
                intersection_n = ifelse(intersection_count >= 1, 1, 0)
                ) %>%
  dplyr::group_by(Year, hdi_level) %>%
  dplyr::summarize(total_counts = n(),
                   climate_prop = round(sum(climate_n, na.rm = T)/total_counts,2), 
                   health_prop = round(sum(health_n, na.rm = T)/total_counts,2),
                   intersection_prop = round(sum(intersection_n, na.rm = T)/total_counts,2)
  ) %>%
  tidyr::pivot_longer(cols = -c("Year", "hdi_level"),
                      names_to = "Type", values_to = "Prop") %>%
  dplyr::mutate(Key = factor(dplyr::case_when(Type == "climate_prop" ~ "Climate",
                                              Type == "intersection_prop" ~ "Intersection",
                                              Type == "health_prop" ~ "Health"), 
                             levels = c("Intersection", "Climate", "Health")),
                Year = lubridate::ymd(Year, truncated = 2L),
                hdi_level = factor(hdi_level, levels = c("Very high human development",
                                                         "High human development",
                                                         "Medium human development",
                                                         "Low human development"))) %>%
  dplyr::filter(Key == "Intersection" & !is.na(hdi_level)) %>%
  ggplot(aes(x = Year, y = Prop, color = hdi_level)) +
  geom_line() +
  theme_minimal() +
  labs(y = "Proportion of companies, %",
       color = "") +
  scale_y_continuous(labels = scales::percent_format(), limits = c(0, 1))

p

ggsave("../output/2y_hdi_prop_references.pdf", p,  width = 10, height = 7)

Table

t <- total_counts %>% 
  dplyr::filter(Year >= 2011 & Sector == "Health Care Equipment & Ser...") %>%
  dplyr::mutate(climate_n = ifelse(climate_count >= 1, 1, 0),
                health_n = ifelse(health_count >= 1, 1, 0),
                intersection_n = ifelse(intersection_count >= 1, 1, 0)
                ) %>%
  dplyr::group_by(Year, hdi_level) %>%
  dplyr::summarize(total_counts = n(),
                   climate_prop = round(sum(climate_n, na.rm = T)/total_counts,2), 
                   health_prop = round(sum(health_n, na.rm = T)/total_counts,2),
                   intersection_prop = round(sum(intersection_n, na.rm = T)/total_counts,2)
  ) %>%
  dplyr::arrange(desc(hdi_level), Year) %>%
  dplyr::filter(!is.na(hdi_level)) 

colnames(t) <- c("Year", "HDI Level", "Total documents", "Climate", "Health", "Intersection")

t %>%
  knitr::kable() %>%
  kableExtra::kable_styling()
Year HDI Level Total documents Climate Health Intersection
2011 Very high human development 9 0.67 1.00 0.00
2012 Very high human development 13 0.54 0.92 0.15
2013 Very high human development 22 0.36 0.86 0.18
2014 Very high human development 21 0.43 0.81 0.14
2015 Very high human development 17 0.65 0.94 0.24
2016 Very high human development 22 0.55 0.82 0.18
2017 Very high human development 26 0.65 0.88 0.12
2018 Very high human development 26 0.85 0.96 0.42
2019 Very high human development 29 0.83 0.97 0.41
2020 Very high human development 37 0.70 0.89 0.41
2011 Medium human development 4 0.25 1.00 0.00
2012 Medium human development 2 0.50 1.00 0.50
2013 Medium human development 3 0.00 1.00 0.00
2014 Medium human development 5 0.20 1.00 0.20
2015 Medium human development 6 0.17 1.00 0.17
2016 Medium human development 4 0.25 1.00 0.25
2017 Medium human development 3 0.00 1.00 0.00
2018 Medium human development 3 0.00 1.00 0.00
2019 Medium human development 4 0.00 1.00 0.00
2020 Medium human development 2 0.50 1.00 0.00
2016 Low human development 1 0.00 1.00 0.00
2017 Low human development 1 0.00 1.00 0.00
2018 Low human development 1 0.00 1.00 0.00
2019 Low human development 2 0.00 1.00 0.00
2020 Low human development 1 0.00 1.00 0.00
2011 High human development 1 1.00 1.00 0.00
2012 High human development 3 0.33 0.67 0.33
2013 High human development 7 0.43 0.43 0.14
2014 High human development 4 0.00 0.50 0.00
2015 High human development 7 0.29 0.57 0.00
2016 High human development 5 0.60 0.40 0.20
2017 High human development 4 0.50 0.50 0.00
2018 High human development 7 0.71 0.57 0.29
2019 High human development 7 0.71 0.86 0.14
2020 High human development 6 0.83 0.83 0.33
readr::write_csv(t, "../output/2y_hdi_prop_references.csv")